package com.ns;

import cn.org.rapid_framework.generator.GeneratorFacade;
import cn.org.rapid_framework.generator.GeneratorProperties;

public class CodeGenerator {

    public static void main(String[] args) {
        try {
            // 模板地址
            String templatePath = "classpath:template";
            // 获取系统用户名
            GeneratorProperties.setProperty("userName", System.getProperty("user.name"));
            // 输出目录
            GeneratorProperties.setProperty("outRoot", "./generatorOutput");
            // 移除表名前缀
            GeneratorProperties.setProperty("tableRemovePrefixes", "h_,t_");
            // Package
            GeneratorProperties.setProperty("basePackage", "com.ns.school");
            // 所属模块
            GeneratorProperties.setProperty("module", "wave");
            // 需要生成的表名
            String[] tables = {"wave_request_detail"};
            GeneratorFacade generator = new GeneratorFacade();
            generator.getGenerator().addTemplateRootDir(templatePath);
            // 删除历史生成的文件
            generator.deleteOutRootDir();
            System.out.println("===开始处理===");
            // 通过数据库表生成文件
            generator.generateByTable(tables);
            // 自动搜索数据库中的所有表并生成文件
            // generator.generateByAllTable();
            // 按table名字删除文件
            // generator.deleteByTable("table_name", "template");
            System.out.println("===结束处理===");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}
